﻿#ifndef COMMON_H
#define COMMON_H

#include <QString>

#define MSG_MAX_SIZE 1024            // 最大数据接收量
#define USER_PAGE_LIST_SIZE 5        // 用户页面列表大小
#define ATTENDANCE_PAGE_LIST_SIZE 5  // 考勤页面列表大小

// 图片类型
#define PIC_REGISTER 1 // 注册照片

// 消息类型
#define MSG_RESULT_SUCCESS 0      // 成功
#define MSG_RESULT_ERROR 1        // 失败
#define MSG_EXIT 101              // 登出
#define MSG_QUIT 102              // 退出
#define MSG_USER_REGISTER 201     // 用户注册
#define MSG_USER_INFO_LIST 202    // 获取用户数据列表(分页)
#define MSG_USER_INFO_COUNT 203   // 获取用户数据总量
#define MSG_USER_DELETE 204       // 删除用户
#define MSG_ATT_INSERT_RECORD 301 // 插入一条打卡记录
#define MSG_ATT_INFO_LIST 302     // 获取考勤列表(分页)

// 打卡类型
#define ATT_FACE 11  // 刷脸打卡
#define ATT_RFID 12  // 刷卡打卡

// 与百度AI平台交互的结构体
typedef struct _user_face_info {
    QString userId;
    QString username;
} UfInfo;

// 用户数据结构体
typedef struct _user_info {
    QString userId;
    QString username;
    QString picPath;
    QString rfidCardNo;
    QString createTime;
} UInfo;

// 考勤数据结构体
typedef struct _attendance_info {
    QString userId;
    QString username;
    QString picPath;
    QString attWay;
    QString createTime;
} AInfo;

class Common {
  public:
    Common();
    bool static sleep(unsigned int msec);
};

#endif // COMMON_H
